import java.io.*;
import java.text.*;
import java.util.Comparator;


public class OrdenaAlumnos {
	private ColaAlumnos cola;
	
	public OrdenaAlumnos(Comparator<Alumno> compara, String ruta) throws IOException{
		cola = new ColaAlumnos(compara);
		agregarAlumnos(ruta);
	}
	
	private void agregarAlumnos(String ruta) throws IOException{
		Alumno alumno;
		String temp = "";
		FileInputStream archivo = new FileInputStream(ruta);
		char car = (char) archivo.read();
		while ((byte) car != -1){
			String nombre = "";
			if((byte) car == 10)
				car = (char) archivo.read();
			while (car != ' '){
				nombre += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
	
			temp = "";
			int carnet = 0;
			while (car != ' '){
				temp += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
			carnet = Integer.parseInt(temp);
			
			temp = "";
			int calificacion = 0;
			while (car != ' '){
				temp += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
			calificacion = Integer.parseInt(temp);
	
			temp = "";
			int dia = 0;
			for(int i=0; i<2; i++){
				temp += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
			dia = Integer.parseInt(temp);
	
			temp = "";
			int mes = 0;
			for(int i=0; i<2; i++){
				temp += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
			mes = Integer.parseInt(temp);
	
	
			temp = "";
			int anno = 0;
			for(int i=0; i<4; i++){
				temp += car;
				car = (char) archivo.read();
			}
			car = (char) archivo.read();
			anno = Integer.parseInt(temp);
			
			alumno = new Alumno(nombre, carnet, calificacion, anno, mes, dia);
			cola.add(alumno);
		}
		archivo.close();
	}
	
	public Alumno mostrarCarnet(){
		Alumno alumno = cola.remove();
		return alumno;
	}
	
	public Alumno mostrarNac(){
		Alumno alumno = cola.remove();
		return alumno;
	}

}
